#ifndef missle_h_
#define missle_h_

#include <list>
#include <iostream>
#include "SDL/SDL.h"
#include "SDL/SDL_opengl.h"
#include "unit.h"
#include "tower.h"
#include "particle.h"

using std::list;

class missle
{
  public:
    missle(); //Lets hope no one ever calls this
    missle(int nx, int ny, int nspeed = 128, int nwidth = 16, int nheight = 16);
    ~missle();

    //graphics
    void draw();
    virtual GLuint gettex();

    //void updateTarget(list<unit*> & l);
    bool move(double per, ptrContainer & dcontainer);

    //private:
    static GLuint tex; // handle to texture
    int ang;
    int x;
    int y;
    int width;
    int height;
    int range;
    int speed;
    unit* target;
    tower* origin;
    int dmg;
    float maxTimeSinceParticle;
    float timeSinceParticle;
};


#endif
